package www.my.imageframecompare;

import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.drawable.BitmapDrawable;
import android.os.Bundle;
import android.os.Environment;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;

import java.io.File;

/**
 * Created by 张英杰 on 2016/10/11.
 */
public class PrintScreenSave extends AppCompatActivity {
    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_printscreensave);
        ImageView iv = (ImageView) findViewById(R.id.iv);
        ImageView iv2 = (ImageView) findViewById(R.id.iv2);
        ImageView imageView = new ImageView(this);
        imageView.setLayoutParams(new LinearLayout.LayoutParams(500, 500));
        imageView.setBackground(getResources().getDrawable(R.drawable.image_loading));
        imageView.buildDrawingCache();
        Bitmap bitmap2 = imageView.getDrawingCache();
        Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.loading);
//        Bitmap bitmap = ((BitmapDrawable) imageView.getDrawable()).getBitmap();

        iv2.setImageBitmap(bitmap2);
        String path= Environment.getExternalStorageDirectory()+File.separator+"abc"+File.separator
                +"bcd"+File.separator+"myImg.jpeg";
        MyImage.SaveBitmap(bitmap,path);
    }
//    /** 首先默认个文件保存路径 */
//    private static final String SAVE_PIC_PATH= Environment.getExternalStorageState().equalsIgnoreCase(Environment.MEDIA_MOUNTED) ? Environment.getExternalStorageDirectory().getAbsolutePath() : /mnt/sdcard;//保存到SD卡
//    private static final String SAVE_REAL_PATH = SAVE_PIC_PATH+ /good/savePic;//保存的确切位置
////    下面就是保存的方法，传入参数就可以了：
//    public static void saveFile(Bitmap bm, String fileName, String path) throws IOException {
//        String subForder = SAVE_REAL_PATH + path;
//        File foder = new File(subForder);
//        if (!foder.exists()) {
//            foder.mkdirs();
//        }
//        File myCaptureFile = new File(subForder, fileName);
//        if (!myCaptureFile.exists()) {
//            myCaptureFile.createNewFile();
//        }www.jb51.net
//        BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(myCaptureFile));
//        bm.compress(Bitmap.CompressFormat.JPEG, 80, bos);
//        bos.flush();
//        bos.close();
//    }
////    这样就保存好了，可是有的时候明明保存下来了，为什么进入相册时查看不到呢？反正我是遇到这样的问题的，原来我们在保存成功后，还要发一个系统广播通知手机有图片更新，广播如下：
//    Intent intent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
//    Uri uri = Uri.fromFile(file);
//    intent.setData(uri);
//    context.sendBroadcast(intent);//这个广播的目的就是更新图库，发了这个广播进入相册就可以找到你保存的图片了！，记得要传你更新的file哦
////    以上内容是基于Android实现保存图片到本地并可以在相册中显示出来的全部叙述，希望能够帮助大家。
}
